package com.ly.fn.biz.ins.srv.api.annotation;

import com.ly.fn.biz.ins.srv.api.register.MqsStatusCheck;
import com.ly.fn.biz.ins.srv.api.register.SrvServiceBeanRegister;
import org.springframework.context.annotation.Import;

import java.lang.annotation.*;

/**
 * [com.ly.fn.biz.ins.srv.api.annotation]
 * [2023/04/25 09:34]
 * <p>
 * 描述:
 *
 * @author [xiaoyuan.wang]
 * @version 1.0.0
 */
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Import({SrvServiceBeanRegister.class, MqsStatusCheck.class})
public @interface InsAutoApi {
    /**
     * 是否开启
     * @return
     */
    boolean enable() default true;

    /**
     * 默认当前服务启动类包名,扫描类名*Service*.class 且继承接口类型
     * @return
     */
    String basePackage() default "";

    /**
     * 保存生成的文件路径,为空不保存
     * @return
     */
    String exportPath() default "";

    /**
     * 默认环境
     * @return
     */
    String env() default "integration";

    /**
     * 指定扫描类，basePackage 优先级高于 basePackages
     * @return
     */

    String[] scanPackages() default {};

    /**
     * mqs 不启用
     * @return
     */
    boolean mqsEnabled() default false;
}
